#!/sbin/openrc-run
# Copyright 1999-2014 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2

depend() {
	after dbus
	before ntpd
	need loopback
}

PIDFILE=/var/run/${SVCNAME}.pid
DAEMON=/usr/sbin/gpsd

checkconfig() {
	# Note: these GPSD_xxx var names should be kept in sync with the udev rules.
	if [ -z "${GPSD_SOCKET}" ] && [ -z "${DEVICES}" ]; then
		GPSD_SOCKET="/var/run/gpsd.sock"
	fi

	if [ -n "${GPSD_SOCKET}" ]; then
		GPSD_OPTIONS="${GPSD_OPTIONS} -F ${GPSD_SOCKET}"
	fi
}

start() {
	checkconfig
	ebegin "Starting gpsd"

	start-stop-daemon --start --quiet --pidfile ${PIDFILE} --exec ${DAEMON} -- \
		${GPSD_OPTIONS} -P ${PIDFILE} ${DEVICES}
	eend $?
}

stop() {
	ebegin "Stopping gpsd"
	start-stop-daemon --stop --quiet --retry=TERM/30/KILL/5 --pidfile ${PIDFILE}
	eend $?
	rm -f ${PIDFILE}
}
